﻿namespace Renci.Data.Interop.OpenGIS.Gml_32
{
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(TypeName = "EdgeType", Namespace = "http://www.opengis.net/gml/3.2")]
    [System.Xml.Serialization.XmlRootAttribute("Edge", Namespace = "http://www.opengis.net/gml/3.2", IsNullable = false)]
    public class EdgeType : AbstractTopoPrimitiveType, IAggregationAttributeGroup
    {
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("container")]
        public TopoSolidPropertyType Container { get; set; }

        private System.Collections.ObjectModel.Collection<DirectedNodePropertyType> _directedNodes = new System.Collections.ObjectModel.Collection<DirectedNodePropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("directedNode")]
        public System.Collections.ObjectModel.Collection<DirectedNodePropertyType> DirectedNodes { get { return this._directedNodes; } }

        private System.Collections.ObjectModel.Collection<DirectedFacePropertyType> _directedFace = new System.Collections.ObjectModel.Collection<DirectedFacePropertyType>();
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("directedFace")]
        public System.Collections.ObjectModel.Collection<DirectedFacePropertyType> DirectedFace { get { return this._directedFace; } }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("curveProperty")]
        public CurvePropertyType CurveProperty { get; set; }

        #region IAggregationAttributeGroup Members

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("aggregationType", Namespace = "http://www.opengis.net/gml/3.2")]
        public AggregationType AggregationType { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool AggregationTypeSpecified { get; set; }

        #endregion
    }
}
